這題是一題類似於 2-3 樹中的插入操作,這道題可以用來理解如何保持樹的平衡。
在一棵**二叉搜索樹(BST)**中插入一個節點,並返回插入後的樹。
二叉搜索樹的性質:
class TreeNode:
    def __init__(self, val=0, left=None, right=None):
        self.val = val
        self.left = left
        self.right = right
def insertIntoBST(root: TreeNode, val: int) -> TreeNode:
    if not root:
        return TreeNode(val)  # 當遇到空位時插入新節點
    if val < root.val:
        root.left = insertIntoBST(root.left, val)  # 遞歸插入到左子樹
    else:
        root.right = insertIntoBST(root.right, val)  # 遞歸插入到右子樹
    return root